package com.dreem.principle.liskov.improve;

/**
 * @program: DesignParrtern
 * @description:
 * @author: Peng
 * @create: 2021-01-16  20:26
 **/
public class LiskovUP {
}

// 创建一个更加基础的基类
class Base{
    // 把更加基础的方法和成员写到Base类
}

// A类
class As extends Base {
    // 返回两个数的差
    public int func1(int num1, int num2){
        return num1 - num2;
    }
}

// B类
class Bs extends Base {
    // 如果B类要使用A类的方法，使用组合关系
    private As as = new As();

    public int func1(int a, int b){
        return a + b;
    }
    public int func2(int a, int b, int c){
        return a + b + c;
    }

    public int func3(int a, int b){
        return this.as.func1(a, b);
    }
}